
/**
 * 
 * @param {Array} allRoutes 定义好的所有权限路由
 * @param {Array} menuList 从服务器返回来的用户菜单数据
 */


//通过获取服务器中当前用户的菜单数据,到allRoutes中计算出用户的路由
//树状结构
// [
//     {
//         mame: "管理首页"
//     },
//     {
//         name: "学员管理",
//         children: [
//             {
//                 name: "学员项目管理"
//             }
//         ]
//     },
//     {
//         name: "我的中心"
//     }
// ]

function recursionRoutes(allRoutes = [], menuList = []) {
    const userRoutes = [];
    menuList.forEach(item => {
        allRoutes.forEach(route => {
            if (item.name === route.meta.name) {
                //判断item是否有子节点
                if (item.children && item.children.length > 0) {
                    //递归
                    route.children = recursionRoutes(route.children, item.children)
                }

                userRoutes.push(route)
            }
        })
    })

    return userRoutes
}

export default recursionRoutes